From Logic to Functional Logic Programs
نویسندگان
چکیده
Abstract Logic programming is a flexible paradigm due to the use of predicates without fixed data flow. To extend logic languages with compact notation functional programming, there are various proposals map evaluable functions into in order stay framework. Since amalgamated offer as well efficient evaluation strategies, we propose an opposite approach this paper. By mapping programs transformation based on inferring dependencies, develop fully automatic which keeps flexibility but can improve computations by reducing infinite search spaces finite ones.
منابع مشابه
From Functional Logic Programs to Purely Functional Programs Preserving Laziness
Functional logic languages extend the setting of functional programming by non-deterministic choices, free variables and narrowing. Most existing approaches to simulate logic features in functional languages do not preserve laziness, i.e., they can only model strict logic programming like in Prolog. Lazy functional logic programming however, has interesting properties supporting a more declarat...
متن کاملFrom Functional Speciications to Logic Programs
The paper investigates a methodology for representing knowledge in logic programming using functional speciications. The methodology is illustrated by an example formalizing several forms of inheritance reasoning. We also introduce and study a new speciication constructor which corresponds to removal of the closed world assumption from input predicates of functional speciications.
متن کاملAdapting functional programs to higher order logic
Higher-order logic proof systems combine functional programming with logic, providing functional programmers with a comfortable setting for the formalization of programs, specifications, and proofs. However, a possibly unfamiliar aspect of working in such an environment is that formally establishing program termination is necessary. In many cases, termination can be automatically proved, but th...
متن کاملOn Tight Logic Programs and Yet Another Translation from Normal Logic Programs to Propositional Logic
Fages showed that if a program is tight, then every propositional model of its completion is also its stable model. Recently, Babovich, Erdem, and Lifschitz generalized Fages' result, and showed that this is also true if the program is tight on the given model of the completion. As it turned out, this is quite a general result. Among the commonly known benchmark domains, only Niemelii's normal ...
متن کاملFunctional Reading of Logic Programs
We propose an embedding of logic programming into lazy functional programming in which each predicate in a Prolog program becomes a Haskell function, in such a way that both the declarative and the procedural reading of the Prolog predicate are preserved. The embedding computes by means of operations on lazy lists. The state of each step in computation is passed on as a stream of answer substit...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Theory and Practice of Logic Programming
سال: 2022
ISSN: ['1471-0684', '1475-3081']
DOI: https://doi.org/10.1017/s1471068422000187